html, body {
  position: absolute;
  margin: 0;
  padding: 0;
  background-color: white;
  font-family: Arial,Helvetica,'Ubuntu','Droid Sans','Open Sans',sans-serif;
  font-size: 14px;
  width: 100%;
  height: 100%; }

#header {
  z-index: 3;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  margin-top: 20px;
  margin-bottom: 20px;
  height: 100px;
  width: 85%; }
  #header .homepage-link {
    position: absolute;
    background-repeat: no-repeat;
    background-position: left center;
    background-size: contain;
    background-image: url("/images/logo.png");
    top: 0px;
    left: 0px;
    display: block;
    width: 100px;
    height: 100px; }
  #header .parent {
    position: absolute;
    left: 105px;
    right: 5px;
    height: 100%; }
    #header .parent .title {
      position: absolute;
      top: 0px;
      left: 0px;
      width: 100%;
      text-align: center; }
      #header .parent .title .branding {
        font-size: 36px;
        font-weight: bold; }
      #header .parent .title .subtitle {
        font-size: 24px; }
    #header .parent .search-field {
      position: absolute;
      bottom: 0px;
      width: 75%;
      text-align: center;
      left: 50%;
      margin-left: -37.5%; }
      #header .parent .search-field input {
        width: 50%;
        text-align: center; }

#flash {
  background-color: yellow;
  width: 100%;
  min-height: 20px;
  position: relative; }
  #flash .message {
    padding-left: 20px; }
  #flash .close-button {
    position: absolute;
    top: 0px;
    right: 40px;
    width: 18px;
    height: 18px;
    border: 1px solid black;
    cursor: pointer;
    border-radius: 10px;
    text-align: center;
    background-color: #2d88ee;
    background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2d88ee), color-stop(100%, #1554ce));
    background-image: -webkit-linear-gradient(top, #2d88ee, #1554ce);
    background-image: -moz-linear-gradient(top, #2d88ee, #1554ce);
    background-image: -ms-linear-gradient(top, #2d88ee, #1554ce);
    background-image: -o-linear-gradient(top, #2d88ee, #1554ce);
    background-image: linear-gradient(top, #2d88ee, #1554ce); }
  #flash .close-button:hover {
    color: white; }

#content {
  margin: 0 auto;
  width: 85%;
  position: relative; }

#user-panel {
  position: absolute;
  top: 0px;
  right: 0px;
  background-color: #DDD;
  border-bottom-left-radius: 10px;
  padding-right: 4px;
  overflow: hidden;
  z-index: 4; }

#user-panel.guest {
  width: 50px;
  text-align: center;
  min-height: 20px;
  padding-left: 5px; }

#user-panel.loggedin {
  width: 150px;
  text-align: right;
  padding-left: 7px;
  min-height: 40px; }
  #user-panel.loggedin a {
    display: block; }
  #user-panel.loggedin .profilepic {
    width: 36px;
    height: 36px;
    float: left;
    position: relative;
    z-index: 98;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center; }
    #user-panel.loggedin .profilepic .highlight {
      position: absolute;
      top: 0px;
      left: 0px;
      bottom: 0px;
      right: 0px;
      border: 3px solid rgba(200, 200, 200, 0.75);
      opacity: 0;
      display: block; }
    #user-panel.loggedin .profilepic .highlight:hover {
      opacity: 1; }
  #user-panel.loggedin .nickname {
    text-align: left;
    height: auto;
    margin-top: 5px;
    margin-left: 5px; }

#messages-panel:not(.active) {
  position: absolute;
  height: 20px;
  background-color: rgba(255, 255, 255, 0);
  z-index: 2; }
  #messages-panel:not(.active) .messages-opener {
    border-bottom-left-radius: 10px;
    border-bottom-right-radius: 10px;
    background-color: #DDD; }
  #messages-panel:not(.active) .messages-opener:hover {
    background-color: #AAA; }
  #messages-panel:not(.active) .contents {
    background-color: #c8c8c8; }

#messages-panel.active {
  height: 100%;
  position: fixed;
  background-color: rgba(200, 200, 200, 0.9);
  z-index: 99;
  -webkit-transition: height 1s, background-color 1s;
  -moz-transition: height 1s, background-color 1s;
  -ms-transition: height 1s, background-color 1s;
  -o-transition: height 1s, background-color 1s;
  transition: height 1s, background-color 1s; }
  #messages-panel.active .messages-opener {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    background-color: #AAA; }
  #messages-panel.active .message-opener:hover {
    background-color: #666; }
  #messages-panel.active .contents {
    background-color: rgba(200, 200, 200, 0); }

@-webkit-keyframes attn {
  0% {
    background-color: #A90100; }

  100% {
    background-color: #D17717; } }

@-moz-keyframes attn {
  0% {
    background-color: #A90100; }

  100% {
    background-color: #D17717; } }

@keyframes attn {
  0% {
    background-color: #A90100; }

  100% {
    background-color: #D17717; } }

#messages-panel {
  width: 100%;
  left: 0px;
  top: 0px;
  -webkit-transition: height 1s, background-color 1s, z-index 0.01s linear 1s;
  -moz-transition: height 1s, background-color 1s, z-index 0.01s linear 1s;
  -ms-transition: height 1s, background-color 1s, z-index 0.01s linear 1s;
  -o-transition: height 1s, background-color 1s, z-index 0.01s linear 1s;
  transition: height 1s, background-color 1s, z-index 0.01s linear 1s;
  overflow: hidden; }
  #messages-panel .messages-opener {
    position: absolute;
    bottom: 0px;
    padding-right: 4px;
    padding-left: 4px;
    margin-left: -30px;
    left: 50%;
    overflow: hidden;
    width: 60px;
    height: 20px;
    display: block;
    color: black;
    text-decoration: none;
    text-align: center;
    font-size: 13px;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: border-bottom-left-radius 1s, border-bottom-right-radius 1s, border-top-left-radius 1s, border-top-right-radius 1s;
    -moz-transition: border-bottom-left-radius 1s, border-bottom-right-radius 1s, border-top-left-radius 1s, border-top-right-radius 1s;
    -ms-transition: border-bottom-left-radius 1s, border-bottom-right-radius 1s, border-top-left-radius 1s, border-top-right-radius 1s;
    -o-transition: border-bottom-left-radius 1s, border-bottom-right-radius 1s, border-top-left-radius 1s, border-top-right-radius 1s;
    transition: border-bottom-left-radius 1s, border-bottom-right-radius 1s, border-top-left-radius 1s, border-top-right-radius 1s; }
  #messages-panel .messages-opener.attn {
    -webkit-animation-name: attn;
    -moz-animation-name: attn;
    animation-name: attn;
    -webkit-animation-duration: 1.5s;
    -moz-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-timing-function: ease;
    -moz-animation-timing-function: ease;
    animation-timing-function: ease;
    -webkit-animation-iteration-count: infinite;
    -moz-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-direction: alternate;
    -moz-animation-direction: alternate;
    animation-direction: alternate; }
  #messages-panel .contents {
    position: absolute;
    top: 5px;
    left: 0px;
    width: 100%;
    bottom: 25px;
    -webkit-transition: bakcground-color 1s;
    -moz-transition: bakcground-color 1s;
    -ms-transition: bakcground-color 1s;
    -o-transition: bakcground-color 1s;
    transition: bakcground-color 1s;
    overflow: hidden; }
    #messages-panel .contents .sidebar {
      position: absolute;
      left: 5px;
      top: 5px;
      bottom: 0px;
      width: 200px;
      overflow-y: auto;
      overflow-x: hidden;
      background-color: rgba(56, 68, 55, 0.73); }
      #messages-panel .contents .sidebar .communique {
        min-height: 30px;
        width: 100%;
        cursor: pointer;
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none; }
        #messages-panel .contents .sidebar .communique .title {
          font-weight: bold; }
        #messages-panel .contents .sidebar .communique .users {
          font-style: italic;
          margin-left: 15px; }
      #messages-panel .contents .sidebar .communique:not(:last-child) {
        border-bottom: 1px solid #222222;
        margin-bottom: 1px; }
      #messages-panel .contents .sidebar .communique.selected {
        background-color: green; }
      #messages-panel .contents .sidebar .communique.unread {
        background-color: orange; }
    #messages-panel .contents .main-pane {
      position: absolute;
      top: 5px;
      left: 210px;
      right: 5px;
      bottom: 0px; }
      #messages-panel .contents .main-pane .overlay {
        position: absolute;
        top: 0px;
        left: 0px;
        right: 0px;
        bottom: 0px;
        background-color: rgba(200, 200, 200, 0.75);
        -webkit-user-select: none;
        -moz-user-select: none;
        -ms-user-select: none;
        user-select: none; }
        #messages-panel .contents .main-pane .overlay .loading {
          width: 100%;
          text-align: center;
          height: 20px;
          font-weight: bold;
          margin-top: -10px;
          position: absolute;
          top: 50%; }
      #messages-panel .contents .main-pane .title {
        position: absolute;
        top: 0px;
        left: 0px;
        width: 100%;
        height: 20px;
        text-align: center; }
      #messages-panel .contents .main-pane .messages {
        position: absolute;
        top: 20px;
        left: 0px;
        right: 0px;
        bottom: 35px;
        overflow-x: hidden;
        overflow-y: auto;
        margin: 0;
        padding: 0; }
        #messages-panel .contents .main-pane .messages .load-more-messages-button {
          width: 100%;
          border: 1px solid #3371b2;
          border-color: #3371b2 #2457a3 #164297;
          border-radius: 16px;
          -webkit-box-shadow: inset 0 1px 0 0 #64a9f2, 0 1px 2px 0 #b3b3b3;
          box-shadow: inset 0 1px 0 0 #64a9f2, 0 1px 2px 0 #b3b3b3;
          color: white;
          display: inline-block;
          font-size: 11px;
          font-weight: normal;
          line-height: 1;
          background-color: #4294f0;
          background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #4294f0), color-stop(100%, #0156fe));
          background-image: -webkit-linear-gradient(top, #4294f0, #0156fe);
          background-image: -moz-linear-gradient(top, #4294f0, #0156fe);
          background-image: -ms-linear-gradient(top, #4294f0, #0156fe);
          background-image: -o-linear-gradient(top, #4294f0, #0156fe);
          background-image: linear-gradient(top, #4294f0, #0156fe);
          padding: 5px 16px;
          text-align: center;
          text-decoration: none;
          text-shadow: 0 -1px 1px #2762bf;
          -webkit-background-clip: padding-box; }
          #messages-panel .contents .main-pane .messages .load-more-messages-button:hover:not(:disabled) {
            border: 1px solid #2062a7;
            border-color: #2062a7 #0e479a #01318e;
            -webkit-box-shadow: inset 0 1px 0 0 #519cf0;
            box-shadow: inset 0 1px 0 0 #519cf0;
            cursor: pointer;
            background-color: #2d88ee;
            background-image: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2d88ee), color-stop(100%, #1554ce));
            background-image: -webkit-linear-gradient(top, #2d88ee, #1554ce);
            background-image: -moz-linear-gradient(top, #2d88ee, #1554ce);
            background-image: -ms-linear-gradient(top, #2d88ee, #1554ce);
            background-image: -o-linear-gradient(top, #2d88ee, #1554ce);
            background-image: linear-gradient(top, #2d88ee, #1554ce);
            text-shadow: 0 -1px 1px #134faf;
            -webkit-background-clip: padding-box; }
          #messages-panel .contents .main-pane .messages .load-more-messages-button:active:not(:disabled) {
            background: #226edd;
            border: 1px solid #0d3c8c;
            border-bottom: 1px solid #062d8d;
            -webkit-box-shadow: inset 0 0 6px 3px #0c44b8, 0 1px 0 0 white;
            box-shadow: inset 0 0 6px 3px #0c44b8, 0 1px 0 0 white;
            text-shadow: 0 -1px 1px #1a52aa; }
          #messages-panel .contents .main-pane .messages .load-more-messages-button:disabled {
            opacity: 0.5;
            cursor: not-allowed; }
        #messages-panel .contents .main-pane .messages .message-group {
          min-height: 36px;
          width: 100%;
          position: relative; }
          #messages-panel .contents .main-pane .messages .message-group .user {
            margin: 0;
            padding: 0;
            float: left; }
            #messages-panel .contents .main-pane .messages .message-group .user .pic {
              width: 36px;
              height: 36px;
              background-repeat: no-repeat;
              background-size: contain;
              background-position: center center;
              display: block; }
            #messages-panel .contents .main-pane .messages .message-group .user .name, #messages-panel .contents .main-pane .messages .message-group .user .time {
              font-size: 10px;
              width: 36px;
              text-align: center; }
          #messages-panel .contents .main-pane .messages .message-group .user:not(:hover) .time {
            display: none; }
          #messages-panel .contents .main-pane .messages .message-group .user:hover .name {
            display: none; }
          #messages-panel .contents .main-pane .messages .message-group .message {
            position: absolute;
            left: 50px;
            right: 10px;
            overflow: hidden; }
          #messages-panel .contents .main-pane .messages .message-group .clearer {
            clear: both; }
        #messages-panel .contents .main-pane .messages .message-group:not(:last-child) {
          margin-bottom: 10px; }
      #messages-panel .contents .main-pane textarea {
        resize: none;
        position: absolute;
        bottom: 0px;
        left: 0px;
        right: 0px;
        height: 30px; }
  #messages-panel .template {
    display: none; }

#copyright {
  margin-top: 5px;
  text-align: center;
  font-size: 9px; }
